package com.ruubypay.biz.mvc.api.model.request;

import java.util.Map;

/**
 * 发起流程API查询VO类
 * @author chenhaiyang
 */
public class StartProcess {

    /**
     * 流程发起人
     */
    private String startUserName;
    /**
     * 根据流程定义key发起任务，会使用最新版本的流程
     */
    private String key;
    /**
     * 业务key，用来关联业务的，可以设置为 类.id
     * 例如：Order.18475
     */
    private String businessKey;
    /**
     *  当前流程的标题，和具体业务有关，比如说，流程是请假流程
     *  title可设置为 xxxx2018-04-15日请假申请单
     */
    private String title;
    /**
     * 流程变量，在流程发起时就可以添加一些流程变量，比如指定每一个组的审批人什么的
     */
    private Map<String,Object> processVariables;

    public String getStartUserName() {
        return startUserName;
    }

    public void setStartUserName(String startUserName) {
        this.startUserName = startUserName;
    }

    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }

    public String getBusinessKey() {
        return businessKey;
    }

    public void setBusinessKey(String businessKey) {
        this.businessKey = businessKey;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public Map<String, Object> getProcessVariables() {
        return processVariables;
    }

    public void setProcessVariables(Map<String, Object> processVariables) {
        this.processVariables = processVariables;
    }

    @Override
    public String toString() {
        return "StartProcess{" +
                "startUserName='" + startUserName + '\'' +
                ", key='" + key + '\'' +
                ", businessKey='" + businessKey + '\'' +
                ", title='" + title + '\'' +
                ", processVariables=" + processVariables +
                '}';
    }
}
